findAllBy*
Purpose
Dynamic method that uses the properties of the domain class to allow the creation of Grails query method expressions that return all instances of the domain classExamples
Given the domain class Book:class Book {
   Long id
   Long version
   String title
   Date releaseDate
   String author
   Boolean paperback
} The following are all possible:def results = Book.findAllByTitle("The Shining", [max:10, sort:"title", order:"desc", offset:100] )
results = Book.findAllByTitleAndAuthor("The Sum of All Fears", "Tom Clancy")
results = Book.findAllByReleaseDateBetween(firstDate, new Date())
results = Book.findAllByReleaseDateGreaterThanEquals(firstDate)
results = Book.findAllByTitleLike("%Hobbit%")
results = Book.findAllByTitleIlike("%Hobbit%") // (since 0.5) - ignorecase
results = Book.findAllByTitleNotEqual("Harry Potter")
results = Book.findAllByReleaseDateIsNull()
results = Book.findAllByReleaseDateIsNotNull()
results = Book.findAllPaperbackByAuthor("Douglas Adams")
results = Book.findAllNotPaperbackByAuthor("Douglas Adams")Description
GORM supports the notion of Dynamic Finders. The findAllBy* method finds all the results for the given method expression.Parameters:
paginateParams - A Map containing parameters max, order, offset and sort 
Pagination and sorting parameters can be used as the last argument to a dynamic method:def results = Book.findAllByTitle("The Shining", [max:10, sort:"title", order:"desc", offset:100] ) The following operator names can be used within the respective dynamic methods:
LessThan 
LessThanEquals 
GreaterThan 
GreaterThanEquals 
Between 
Like 
Ilike (i.e. ignorecase like) 
IsNotNull 
IsNull 
Not 
NotEqual 
And 
Or 
The above operator names can be considered keywords, and you will run into problems when querying domain classes that have one of these names used as property names. For more information on dynamic finders refer to the user guide.